A Linear Adaptive Filter (LAF) 100 is shown in FIG. 1. The LAF 100 has a slicer 110. Generally, such a slicer 110 may be defined as a device that truncates input data and outputs data as a value that is closest to a defined allowable value. The slicer 110 may, for example, provide an estimate (hard symbol 115) associated with a value of a received symbol 112.
Graphically, this operation may place decision boundaries between eight possible hard symbols, such as those illustrated in FIG. 2. These boundaries may be, for example, the mid points between consecutive hard symbols.
According to some embodiments, in the example, given the input symbol 112 (which shall be referred to as “y”), the hard symbol 115 (“Ŷ”) is therefore:                If 4<=y<6 then Ŷ=5        If 2<=y<4, then Ŷ=3        etc.        
Thus, as long as the input symbol 112 is received within a decision boundary corresponding to the input symbol 112 as it was originally transmitted, the hard symbols 115 are correct. However, due to such factors as noise, the received input symbols 112 may fall within a wrong boundary, causing the slicer 110 to generate the wrong hard symbol 115. For example a symbol ‘3’ might be transmitted, but an input symbol ‘4.25’ may be received. Thus, the slicer 110 outputs the incorrect hard symbol 115 value of ‘5’. The case of 20 dB SNR is shown in FIG. 2 and illustrates the instances of wrong decisions.
Turning back to FIG. 1, in the LAF 100, soft symbols 155 {tilde over (y)} [k] (the input to slicer 110) are generated from input symbols 112 that have been filtered through a feed forward filter 140 and compared to hard symbols 115 that have been filtered through a feed back filter 120 via a comparator 130. Soft output 115 can be used to operate, for instance, a Viterbi Decoder (not illustrated).
Generally, filters 120 and 140 can compensate for various transitory changes/error conditions in input symbols 112. An error e(k) 142, representing the difference in value between soft symbol {tilde over (y)} 155 and hard symbol 115, can be used to update coefficients of filter 120 taps and filter 140 taps using a coupled least mean squared (LMS) adapter 145.
Input symbols 112 may have three components: an original (wanted) transmitted signal (χ), a reflections component (δχ), and an Additive Gaussian Noise (AWGN). Assuming no AWGN and other imperfections in LAF 100, coefficients of taps of FBF 120 and FFF 140 will typically converge so that an error e(n), (determined by an error determiner), will be zero, and the coefficients may converge to a fixed set.
However, in real-world scenarios, even after filters 120, 140 have converged, the slicer error 142 will typically be non-zero due to the presence of random noise. As the random noise level gets higher, as in case of low SNR (signal to noise ratio) input symbols 112, the hard symbols 115 {tilde over (y)} [k] applied to filters 120 and 140 will be wrong. This will, in turn, cause a greater slicer error 144 e(k) value, which may cause a faulty programming of the filter's 120 coefficients and filter 140 to change in the wrong direction when updated by the LMS 145, which in turn creates more errors and ultimately the filter 100 may become becomes unstable.